﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using Telerik.Web.UI;
using SMA.GENTEv1;

public partial class Protegidos_Administracao_Cadastros_acWorkflowParametros : System.Web.UI.Page
{
    protected const int idTipoPatrocinador = 1;
    protected const int idTipoPrestador = 2;

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            CarregaOrganizacao(rcbPatrocinador, idTipoPatrocinador);

            rcbPrestador.Enabled = false;
            rcbContrato.Enabled = false;
        }
    }

    #region Eventos
    protected void btnEditar_Click1(object sender, EventArgs e)
    {
        int idContrato = 0;
        idContrato = int.Parse(rcbContrato.SelectedValue);

        Server.Transfer("acCadWorkflowParametros.aspx?idContrato=" + idContrato.ToString());
    }
    protected void btnLimpar_Click(object sender, EventArgs e)
    {

    }
    protected void rcbPatrocinador_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e)
    {
        CarregaPrestadores(rcbPrestador, Int32.Parse(rcbPatrocinador.SelectedValue.ToString()));
        rcbPrestador.Enabled = true;
    }
    protected void rcbPrestador_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e)
    {
        CarregaContrato(rcbContrato, int.Parse(rcbPatrocinador.SelectedValue), int.Parse(rcbPrestador.SelectedValue));
        rcbContrato.Enabled = true;
    }
    #endregion

    #region Metodos
    protected void CarregaOrganizacao(RadComboBox combo, int idTipoOrgan)
    {
        try
        {
            Organizacao organizacao = new Organizacao();
            List<Organizacao> listOrgan = organizacao.SelectPor(idTipoOrgan);

            combo.DataTextField = "NomeFantasia";
            combo.DataValueField = "IdOrganizacao";
            combo.DataSource = listOrgan;
            combo.DataBind();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    protected void CarregaPrestadores(RadComboBox combo, int idPatrocinador)
    {
        try
        {
            Organizacao organizacao = new Organizacao(idPatrocinador, false, true);
            List<Organizacao> listPrestadores = new List<Organizacao>();

            foreach (OrganizacaoPatrocinadorPrestador item in organizacao.OrganizacaoPrestador)
            {
                listPrestadores.Add(item.OrganizacaoPrestador);
            }

            combo.Text = "";
            combo.DataTextField = "NomeFantasia";
            combo.DataValueField = "IdOrganizacao";
            combo.DataSource = listPrestadores;
            combo.DataBind();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    protected void CarregaContrato(RadComboBox combo, int idPatrocinador, int idPrestador)
    {
        try
        {
            Contrato contrato = new Contrato();
            List<Contrato> listContrato = contrato.SelectContratoVigencia(idPatrocinador, idPrestador);

            combo.DataTextField = "Descricao";
            combo.DataValueField = "IdContrato";
            combo.DataSource = listContrato;
            combo.DataBind();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    #endregion
}
